@charset "UTF-8";
/* ---------------------------------------------
browser initialization
--------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-size: 100%;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

blockquote, q {
  quotes: none;
}

blockquote::before, blockquote::after, q::before, q::after {
  content: '';
  content: none;
}

input, textarea {
  margin: 0;
  padding: 0;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

a:focus {
  outline: none;
}

/* ---------------------------------------------
common format
--------------------------------------------- */
html {
  font-size: 10px;
}

body {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, sans-serif;
  font-size: 1.6rem;
  line-height: 1.625;
  color: #231e1b;
  font-feature-settings: "palt";
}

a {
  color: #c91111;
}

a:hover {
  text-decoration: none;
}

a:hover img {
  opacity: 0.75;
}

img {
  margin: 0 auto;
  max-width: 100%;
  height: auto;
  display: block;
}

input, textarea, select, button {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

/* ---------------------------------------------
site common class
--------------------------------------------- */
.clearfix::after {
  content: '';
  display: table;
  clear: both;
}

.inner {
  margin: 0 auto;
  padding: 0 10px;
  width: 1000px;
  box-sizing: border-box;
}

.pc_hide {
  display: none;
}

@media (max-width: 640px) {
  .inner {
    width: auto;
  }
  .pc_hide {
    display: block;
  }
  .sp_hide {
    display: none;
  }
  
main {
    margin-top: 70px !important;
}

}

/* ---------------------------------------------
header format
--------------------------------------------- */
header {
    position: fixed;
    top: 0;
    width: 100%;
    background-color: #ffffff;
    z-index: 5;
	border-bottom:solid #0b326d;
}

main {
	margin-top:80px;
}

#site_header {
  min-width: 1000px;
}

#site_header #site_header_inner {
  margin: 0 auto;
  padding: 10px;
  max-width: 1250px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#site_header #site_header_inner h1 {
  width: 270px;
}

#site_header #site_header_inner h1 a {
  display: block;
}

#site_header #site_header_inner nav ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

#site_header #site_header_inner nav ul li {
  margin-left: 20px;
  font-size: 1.8rem;
  line-height: 1.2;
  text-align: center;
}

#site_header #site_header_inner nav ul li a {
  text-decoration: none;
  display: block;
}

#site_header #site_header_inner nav ul li:nth-child(1) a {
  pointer-events: none;
}

#site_header #site_header_inner nav ul li:nth-child(1) a span {
  padding-left: 0.14em;
  font-size: 1.4rem;
  letter-spacing: 0.14em;
  color: #231e1b;
  display: block;
}

#site_header #site_header_inner nav ul li:nth-child(1) a b {
  background: url("../img/icon_freedial.svg") left center no-repeat;
  padding-left: 40px;
  font-size: 2.6rem;
  color: #c91111;
  display: block;
}

#site_header #site_header_inner nav ul li:nth-child(1) a small {
  font-size: 1.1rem;
  color: #231e1b;
  display: block;
}

#site_header #site_header_inner nav ul li:nth-child(2) a {
  background-color: #4a99e3;
  border-radius: 4px;
  width: 250px;
  font-weight: bold;
  color: #fff;
  box-shadow: 0 2px 2px 0 rgba(137, 137, 137, 0.75);
}

#site_header #site_header_inner nav ul li:nth-child(2) a span {
  background: url("../img/icon_mail.svg") left center no-repeat;
  padding: 15px 0 15px 45px;
  display: inline-block;
}

#site_header #site_header_inner nav ul li:nth-child(2) a:hover {
  background-color: #5cda54;
}
img.line_bnr {
    min-width: 220px;
}

@media (max-width: 640px) {

img.pc_hide.line_bnr {
    min-width: 50px;
}
li.line_bar {
	margin-top: -15px;
}
  #site_header {
    min-width: inherit;
  }
  #site_header #site_header_inner {
    max-width: inherit;
  }
  #site_header #site_header_inner h1 {
    width: 100px;
  }
  #site_header #site_header_inner nav ul li {
    margin-left: 10px;
    width: 60px;
    font-size: 1rem;
  }
  #site_header #site_header_inner nav ul li a {
    padding: 25px 5px 5px;
  }
  #site_header #site_header_inner nav ul li:nth-child(1) a {
    background: url("../img/icon_freedial.svg") center 5px no-repeat;
    background-size: 20px auto;
    border: #727272 solid 1px;
    border-radius: 2px;
    font-weight: bold;
    pointer-events: all;
    box-shadow: 0 2px 2px 0 rgba(137, 137, 137, 0.75);
  }
  #site_header #site_header_inner nav ul li:nth-child(2) a {
    background-image: url("../img/icon_mail.svg");
    background-position: center 5px;
    background-repeat: no-repeat;
    background-size: 20px auto;
    border-radius: 2px;
    width: auto;
  }
}

/* ---------------------------------------------
top page format
--------------------------------------------- */
#lp_contents section {
  min-width: 1000px;
}

#lp_contents section.section_cv {
  /*background-color: #c91111;*/
  padding: 40px 0;
  overflow: hidden;
}

#lp_contents section.section_cv .inner {
  position: relative;
}

#lp_contents section.section_cv .inner .contents {
    background-color: #fff315;
    border-radius: 25px;
    padding: 25px 55px 35px 295px;
    /* box-shadow: 0 0 0 6px #fff inset, 0 0 0 8px #ff0033 inset; */
}

#lp_contents section.section_cv .inner .contents h2 {
  font-size: 4rem;
  line-height: 1.2;
  text-align: center;
  color: #000000;
}

#lp_contents section.section_cv .inner .contents h2 b {
  font-size: 6rem;
  color: #ff0033;
}

#lp_contents section.section_cv .inner .contents .lead {
  margin-top: 15px;
  font-size: 2.2rem;
  line-height: 1.2;
  text-align: center;
}

#lp_contents section.section_cv .inner .contents .reception_time {
  background-color: #fff315;
  margin-top: 20px;
  padding: 5px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  color: #ff0600;
}

#lp_contents section.section_cv .inner .contents .tel_link {
  margin-top: 20px;
  line-height: 1.2;
  text-align: center;
}

#lp_contents section.section_cv .inner .contents .tel_link a {
    text-decoration: none;
    /*pointer-events: none;*/
    display: inline-block;
    font-size: 5rem;
    font-weight: bold;
    border: solid;
    padding: 5px 15px;
    margin-top: 2%;
    color: #4a99e3;
    background-color: #ffffff;
}

#lp_contents section.section_cv .inner .contents .tel_link a:hover {
    color:rgba(102,255,204,1);
}

#lp_contents section.section_cv .inner .contents .tel_link a b {
  /*background: url("../img/icon_freedial.svg") left center no-repeat;*/
  background-size: 86px auto;
  /*padding-left: 96px;*/
  font-size: 5rem;
  color: #4a99e3;
  display: inline-block;
}

#lp_contents section.section_cv .inner .contents .tel_link a small {
  margin-top: 10px;
  font-size: 1.8rem;
  color: #000000;
  display: block;
}

#lp_contents section.section_cv .inner .contents .form_link {
  margin-top: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

.form_link button {
    /*border-radius: 50px;*/
    background-color: #4a99e3;
}

#lp_contents section.section_cv .inner .contents .form_link a {
    /*background: url(../img/icon_mail_blue.svg) left center no-repeat;*/
    padding: 5px 10px;
    color: #ffffff;
    display: inline-block;
    text-decoration: none;
    font-size: 3.2rem;
    /* border-radius: 10px; */
}

.form_link button a:hover {
	background-color:rgba(102,255,204,0.5)
}

#lp_contents section.section_cv .inner .photo {
  position: absolute;
  top: 15%;
  left: 40px;
}

#lp_contents section.section_merit {
  background: url("../img/half-gre.jpg") repeat;
  /*background: url("../img/section_merit_bg.png") center top;*/
  padding: 50px 0;
}
/***************************************************************************/
#lp_contents section.sect_p02 {
    /*background: url(../img/section_sos_bg.png) repeat;
    /* background: url(../img/section_merit_bg.png) center top; */
    padding: 50px 0;
}
/***************************************************************************/
#lp_contents section.section_merit .inner h2 + p {
  margin-top: 60px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

#lp_contents section.section_merit .inner ul {
  margin: 0 -10px;
  display: flex;
  flex-wrap: wrap;
}

#lp_contents section.section_merit .inner ul li {
  background-color: #fff;
  /*border: #c91111 solid 2px;*/
  border: #4a99e3 solid 2px;
  /*border-top-right-radius: 20px;
  border-bottom-left-radius: 20px;*/
  margin: 30px 10px 0;
  padding: 15px 10px;
  box-sizing: border-box;
  flex: calc(25% - 20px) 0 0;
}

#lp_contents section.section_merit .inner ul li p {
  margin-top: 20px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

#lp_contents section.section_merit .inner ul li p b {
  font-size: 2.6rem;
  color: #ff0033;
  display: block;
}

#lp_contents section.section_merit .inner ul li p b.small {
  font-size: 2.4rem;
}

#lp_contents section.section_merit .inner ul li p span {
  font-size: 1.6rem;
}

#lp_contents section#section01 .section01_inner {
  margin: 0 auto;
  padding: 0 10px;
  max-width: 1200px;
  display: block;
}

#lp_contents section#section01 .section01_inner img {
  margin: 0;
}

#lp_contents section#section01 h2 {
  background-color: #0b326d;
  padding: 15px 0;
}

#lp_contents section#section01 h2 .section01_inner img {
  margin-left: 15.83333%;
  width: 68.58333%;
  max-width: 823px;
}

#lp_contents section#section01 .contents {
  background: url("../img/section01_bg.jpg") center top no-repeat;
  padding-top: 1px;
}

#lp_contents section#section01 .contents .section01_inner {
  position: relative;
}

#lp_contents section#section01 .contents .section01_inner .body {
  margin-top: -4.16667%;
  width: 67%;
  max-width: 804px;
}

#lp_contents section#section01 .contents .section01_inner .icon {
  width: 30%;
  max-width: 360px;
  position: absolute;
  bottom: -24.07407%;
  right: 0.2%;
}

#lp_contents section#section01 .contents .lead {
  background-color: #4a99e3;
  margin-top: 30px;
  padding: 15px 0;
}

#lp_contents section#section01 .contents .lead .section01_inner p {
  width: 75.91667%;
  max-width: 911px;
}

#lp_contents section#section03 {
  background: url("../img/section03_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 60px 0;
}

#lp_contents section#section03 .inner h2 + p {
  margin-top: 20px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}

#lp_contents section#section03 .inner h2 + p + p {
  margin-top: 65px;
  font-size: 3.4rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  position: relative;
}

#lp_contents section#section03 .inner h2 + p + p::before {
  content: '';
  border-right: #ff0033 solid 8px;
  border-bottom: #ff0033 solid 8px;
  margin: 0 auto;
  width: 34px;
  height: 34px;
  position: absolute;
  top: -65px;
  right: 0;
  left: 0;
  transform: rotate(45deg);
}

#lp_contents section#section03 .inner h2 + p + p span {
  background-color: #ff0033;
  margin-top: 10px;
  padding: 5px 20px;
  font-size: 4rem;
  color: #fff;
  display: inline-block;
}

#lp_contents section#section03 .inner h2 + p + p span b {
  color: #ffff00;
}

#lp_contents section#section04 {
  background-color:rgba(0,0,0,1);
  background: url("../img/half-black.jpg") repeat;
  padding: 60px 0;
}

#lp_contents section#section04 .inner h2 + p {
  margin-top: 40px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: #fff;
}

#lp_contents section#section04 .inner ul li {
  background-color: #fff;
  margin-top: 40px;
  padding: 15px 20px 30px;
}

#lp_contents section#section04 .inner ul li h3 {
  background-color: #ff0033;
  /*margin-left: -30px;*/
  padding: 10px 20px;
  width: 320px;
  font-size: 3rem;
  line-height: 1.2;
  color: #fff;
  /*position: relative;*/
}

#lp_contents section#section04 .inner ul li h3::after {
  content: '';
  border-color: transparent #fff transparent transparent;
  border-style: solid;
  border-width: 0 20px 60px 0;
  margin: 0;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  right: 0;
  display: block;
}

#lp_contents section#section04 .inner ul li table {
  border: #aaa solid 1px;
  margin-top: 15px;
  width: 100%;
  font-size: 2rem;
  line-height: 1.4;
  box-sizing: border-box;
}

#lp_contents section#section04 .inner ul li table tbody tr th, #lp_contents section#section04 .inner ul li table tbody tr td {
  border: #aaa solid 1px;
  padding: 15px;
  font-weight: bold;
  vertical-align: middle;
}

#lp_contents section#section04 .inner ul li table tbody tr th {
  background-color: #e6f8ff;
  width: 370px;
}

#lp_contents section#section04 .inner ul li table tbody tr td {
  color: #3e3e3e;
}

#lp_contents section#section04 .inner ul li table tbody tr td .notes {
  margin-top: 10px;
  font-size: 1.6rem;
  color: #231e1b;
  padding-left: 1.25em;
  position: relative;
}

#lp_contents section#section04 .inner ul li table tbody tr td .notes::before {
  content: '→';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}

#lp_contents section#section04 .inner ul li table tbody tr td .notes b {
  color: #ff0033;
}

#lp_contents section#section04 .inner ul li:nth-child(4) table tbody tr th {
  width: 510px;
}

#lp_contents section#section05 {
	background: url(../img/section_dot-grid_bg.png) repeat;
  /*background-image: repeating-linear-gradient(0deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px), repeating-linear-gradient(90deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px);
  background-position: center;
  padding: 60px 0;*/
}

#lp_contents section#section05 .inner h2 {
  margin: 0 auto;
  width: 700px;
}

#lp_contents section#section05 .inner h2 small {
  margin-top: 15px;
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.2;
  text-align: right;
  display: block;
}

#lp_contents section#section05 .inner h2 + p {
  margin: 40px 0 0 -23px;
  width: 1003px;
}

#lp_contents section#section05 .inner ol li {
  margin-top: 60px;
}

#lp_contents section#section05 .inner ol li:nth-child(1) {
  margin-top: 0;
}

#lp_contents section#section06 {
  background: url("../img/section06_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 60px 0;
}

#lp_contents section#section06 .inner p {
  margin-top: 30px;
}

#lp_contents section#section07 {
	background: url(../img/section_dot-grid_bg.png) repeat;
 /*background-image: repeating-linear-gradient(0deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px), repeating-linear-gradient(90deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px);*/
  background-position: center;
  padding: 60px 0;
}

#lp_contents section#section07 .inner ol {
  margin-top: 50px;
}

#lp_contents section#section07 .inner ol li {
  margin-top: 30px;
}

#lp_contents section#section07 .inner ol + p {
  margin-top: 20px;
}

#lp_contents section#section08 {
  background: url("../img/bg05.png") repeat;
  /*background-color: #213660;*/
  padding: 60px 0;
}

#lp_contents section#section08 .inner ol {
  margin-top: 40px;
}

#lp_contents section#section08 .inner ol li {
  margin-top: 20px;
}

#lp_contents section#section09 {
  background: url("../img/section09_bg.jpg") center no-repeat;
  background-size: cover;
  padding: 60px 0;
}

#lp_contents section#section09 .inner p {
  margin-top: 15px;
}

#lp_contents section#section10 {
  background: url("../img/sprinkles.png");
  background-size: 14px auto;
  background-color: #f7f7f7;
  padding-bottom: 80px;
}

#lp_contents section#section10 .inner p {
  margin-top: 60px;
}

#lp_contents section#section11 {
	background: url(../img/section_dot-grid_bg.png) repeat;
 /* background-image: repeating-linear-gradient(0deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px), repeating-linear-gradient(90deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px);*/
  background-position: center;
  padding: 60px 0;
}

#lp_contents section#section11 .inner ol {
  margin-top: 60px;
}

#lp_contents section#section11 .inner ol li {
  margin-top: 30px;
}

#lp_contents section#section12 {
  background: url("../img/sprinkles.png");
  background-size: 14px auto;
  background-color: #f7f7f7;
  padding: 80px 0;
}

#lp_contents section#section12 .inner h3 {
  margin-top: 100px;
}

#lp_contents section#section12 .inner ul {
  margin-top: 40px;
}

#lp_contents section#section12 .inner ul li {
  margin-top: 30px;
  box-shadow: 2px 2px 3px 0 rgba(142, 142, 142, 0.75);
}

#lp_contents section#section12 .inner .photo {
  margin-top: 40px;
}

#lp_contents section#section12 .inner .photo img {
  box-shadow: 20px 20px 0 0 #d6d6d6;
}

#lp_contents section#section13 {
	background: url("../img/sprinkles.png");
 /* background-image: repeating-linear-gradient(0deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px), repeating-linear-gradient(90deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px);*/
  background-position: center;
  padding: 80px 0;
}

#lp_contents section#section13 .inner p {
  margin-top: 30px;
}

#lp_contents section#section13 .inner ol {
  margin-top: 40px;
}

#lp_contents section#section13 .inner ol li {
  margin-top: 30px;
}

#lp_contents section#section14 {
  background: url("../img/section04_bg.svg");
  background-color: #213660;
  padding: 60px 0 130px;
}

#lp_contents section#section14 .inner p {
  margin: 60px -9px 0;
}

#lp_contents section#section15 .inner h2 {
  margin-top: -50px;
  width: 566px;
}

#lp_contents section#section15 .inner p {
  margin-top: 10px;
}

#lp_contents section#section15 .inner p img {
  margin-right: 0;
}

#lp_contents section#section16 {
  background: url("../img/section04_bg.svg");
  background-color: #213660;
  padding: 60px 0;
}

#lp_contents section#section16 .inner ol {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
}

#lp_contents section#section17 {
  background-image: repeating-linear-gradient(0deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px), repeating-linear-gradient(90deg, rgba(225, 235, 239, 0.5) 0, rgba(225, 235, 239, 0.5) 1px, transparent 1px, transparent 6px, rgba(225, 235, 239, 0.5) 6px, rgba(225, 235, 239, 0.5) 7px, transparent 7px, transparent 12px, rgba(225, 235, 239, 0.5) 12px, rgba(225, 235, 239, 0.5) 13px, transparent 13px, transparent 18px, rgba(225, 235, 239, 0.5) 18px, rgba(225, 235, 239, 0.5) 19px, transparent 19px, transparent 24px, rgba(225, 235, 239, 0.5) 24px, rgba(225, 235, 239, 0.5) 25px, transparent 25px, transparent 30px, rgba(225, 235, 239, 0.5) 30px, rgba(225, 235, 239, 0.5) 31px);
  background-position: center;
  padding: 60px 0;
}

#lp_contents section#section17 .inner ol {
  margin-top: 40px;
  display: flex;
  justify-content: space-around;
}

#lp_contents section#section18 {
	background: url(../img/section_dot-grid_bg.png) repeat;
  /*background: url("../img/section18_bg.jpg") center no-repeat;
  background-size: cover;*/
  padding: 60px 0;
}

#lp_contents section#section18 .inner h2 + dl {
  margin-top: 60px;
}

#lp_contents section#section18 .inner dl {
  background-color: #ffffff;
    border: solid #433c5e 2px;
    margin-top: 30px;
    padding: 15px 30px 25px;
    /* box-shadow: 2px 2px 3px 0 rgba(142, 142, 142, 0.75); */
}

#lp_contents section#section18 .inner dl dt, #lp_contents section#section18 .inner dl dd {
  padding: 15px 0 0 70px;
}

#lp_contents section#section18 .inner dl dt::before, #lp_contents section#section18 .inner dl dd::before {
  /*border-radius: 50%;*/
  width: 50px;
  height: 50px;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 50px;
  text-align: center;
  color: #fff;
  position: absolute;
  display: block;
  top: 0;
  left: 0;
}

#lp_contents section#section18 .inner dl dt {
	background: #f8fffe;
  border: #433c5e double;
    padding-bottom: 10px;
    font-size: 2.6rem;
    font-weight: bold;
    line-height: 1.2;
    color: #433c5e;
    position: relative;
}

#lp_contents section#section18 .inner dl dt::before {
  content: '問';
   background-color: #433c5e;
}

#lp_contents section#section18 .inner dl dd {
  margin-top: 15px;
  font-size: 1.8rem;
  line-height: 1.44;
  position: relative;
}

#lp_contents section#section18 .inner dl dd::before {
  content: '答';
    background-color: #ff0033;
}

#lp_contents section#section19 {
	background: url(../img/bg05.png) repeat;
  /*background: url("../img/section04_bg.svg");*/
  /*background-color: #213660;*/
  padding: 60px 0;
}

#lp_contents section#section19 .inner .contens {
  background-color: #fff;
  margin-top: 40px;
  padding: 30px;
}

#lp_contents section#section19 .inner .contens h3 {
  border-bottom: #c91111 solid 2px;
  padding-bottom: 15px;
  font-size: 3rem;
  line-height: 1.2;
  text-align: center;
}

#lp_contents section#section19 .inner .contens h3 b {
  color: #ff0033;
}

#lp_contents section#section19 .inner .contens h3 b b {
  font-size: 4.2rem;
}

#lp_contents section#section19 .inner .contens p {
  margin-top: 1.6em;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.6;
}

#lp_contents section#section19 .inner .contens p b {
  color: #ff0033;
}

#lp_contents section#section20 {
  background:url(../img/sprinkles.png);
  /*background: url("../img/section20_bg.svg");*/
  padding: 80px 0;
}

#lp_contents section#section20 .inner p {
  margin-top: 20px;
}

#lp_contents section#section_form {
	background: url(../img/sprinkles.png);
  padding: 60px 0;
}

#lp_contents section#section_form .inner h2 {
  font-size: 4rem;
  line-height: 1.2;
  text-align: center;
}

#lp_contents section#section_form .inner h3 {
  margin-top: 80px;
  font-size: 2.4rem;
  line-height: 1.2;
  text-align: center;
}

#lp_contents section#section_form .inner #form {
  margin-top: 40px;
}

#lp_contents section#section_form .inner #form dl {
  background-color: #ffffff;
  border: #777 solid 1px;
  margin-top: 10px;
  padding: 10px 10px 10px 20px;
  line-height: 1.4;
  display: flex;
  align-items: center;
}

#lp_contents section#section_form .inner #form dl dt {
  padding-right: 50px;
  font-weight: bold;
  flex: 200px 0 0;
}

#lp_contents section#section_form .inner #form dl dt span {
  background-color: #1c3466;
  margin-right: -50px;
  padding: 3px 0;
  width: 40px;
  font-size: 1.4rem;
  line-height: 1.1;
  text-align: center;
  color: #fff;
  display: block;
  float: right;
}

#lp_contents section#section_form .inner #form dl dt span.required {
  background-color: #c91111;
}

#lp_contents section#section_form .inner #form dl dd {
  padding-left: 30px;
  flex: 1;
}

#lp_contents section#section_form .inner #form dl dd input[type="text"], #lp_contents section#section_form .inner #form dl dd input[type="email"], #lp_contents section#section_form .inner #form dl dd input[type="tel"], #lp_contents section#section_form .inner #form dl dd textarea {
  border: #adadad solid 1px;
  border-radius: 0;
  padding: 10px;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  display: block;
  box-sizing: border-box;
}

#lp_contents section#section_form .inner #form dl dd textarea {
  height: 5em;
}

#lp_contents section#section_form .inner #form dl dd .error {
  margin-top: 10px;
  font-size: 1.4rem;
  color: red;
}

#lp_contents section#section_form .inner #form #btn_submit {
  margin-top: 40px;
}

#lp_contents section#section_form .inner #form #btn_submit button {
  background-color: #4a99e3;
  border: none;
  border-radius: 10px;
  margin: 0 auto;
  padding: 30px 50px;
  width: 490px;
  font-family: inherit;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.1;
  text-align: center;
  color: #fff;
  cursor: pointer;
  position: relative;
  display: block;
  box-shadow: 0 2px 2px 0 rgba(137, 137, 137, 0.75);
}

#lp_contents section#section_form .inner #form #btn_submit button::before, #lp_contents section#section_form .inner #form #btn_submit button::after {
  content: '';
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
}

#lp_contents section#section_form .inner #form #btn_submit button::before {
  background-color: #fff;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  right: 25px;
}

#lp_contents section#section_form .inner #form #btn_submit button::after {
  border-color: transparent transparent transparent #c91111;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  width: 0;
  height: 0;
  right: 29px;
}

#lp_contents section#section_form .inner #form #btn_submit button:hover {
  background-color: #eb3333;
}

#lp_contents section#section_form .inner #privacy_policy {
	background-color: #ffffff;
  border: #777 solid 1px;
  margin-top: 10px;
  padding: 20px;
  height: 200px;
  font-size: 1.3rem;
  line-height: 1.7;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

#lp_contents section#section_form .inner #privacy_policy > *:first-child {
  margin-top: 0;
}

#lp_contents section#section_form .inner #privacy_policy h4 {
  margin-top: 1.7em;
}

#lp_contents section#section_form .inner #privacy_policy h4 + p, #lp_contents section#section_form .inner #privacy_policy h4 + address {
  margin-top: 0.5em;
}

#lp_contents section#section_form .inner #privacy_policy p, #lp_contents section#section_form .inner #privacy_policy address {
  margin-top: 1.7em;
}

#default_contents {
  margin-top: 60px;
}

#default_contents .inner h2 {
  border-bottom: #1c3466 solid 2px;
  padding-bottom: 10px;
  font-size: 3rem;
  text-align: center;
  line-height: 1.2;
  color: #1c3466;
}

#default_contents .inner h3 {
  border-left: #1c3466 solid 10px;
  margin-top: 60px;
  padding: 5px 0 5px 10px;
  font-size: 2.4rem;
  line-height: 1.4;
}

#default_contents .inner p {
  margin-top: 1.7em;
}

#default_contents .inner p.error_messe {
  color: red;
}

#default_contents .inner #btn_back {
  margin-top: 30px;
  text-align: center;
}

#lp_contents .section_cv .contents p.lead2 {
    font-size: 2rem;
    margin: 5% 3% 3% 7%;
    font-weight: bold;
    color: #ff0033;
}

@media (max-width: 640px) {
	
nav {
    position: relative;
    right: 15%;
}
	
  #lp_contents section {
    min-width: inherit;
  }
  #lp_contents section.section_cv {
    padding: 15px 0;
  }
  #lp_contents section.section_cv .inner .contents {
    border-radius: 10px;
    padding: 15px 15px 15px 20px;
    /* box-shadow: 0 0 0 3px #fff inset, 0 0 0 4px #c91111 inset; */
  }
  #lp_contents section.section_cv .inner .contents h2 {
    font-size: 2.5rem;
    position: relative;
    z-index: 1;
  }
  #lp_contents section.section_cv .inner .contents h2 b {
    font-size: 2.7rem;
  }
  #lp_contents section.section_cv .inner .contents .form_link a {
    font-size: 2.7rem;
}

.form_link button a:hover {
	background-color:rgba(102,255,204,0.5)
}
  
  #lp_contents section.section_cv .inner .contents .lead {
    margin-top: 5px;
    font-size: 1.7rem;
    position: relative;
    z-index: 1;
  }
  #lp_contents section.section_cv .inner .contents .reception_time {
    margin-top: 10px;
    font-size: 1.1rem;
    position: relative;
    z-index: 1;
  }
  #lp_contents section.section_cv .inner .contents .tel_link {
    margin: 10px 10px 0;
    position: relative;
    z-index: 1;
  }
  #lp_contents section.section_cv .inner .contents .tel_link a {
    /*background-color: #fff; */
    /* border: #727272 solid 1px; */
    /* border-radius: 2px; */
    padding: 5px 10px;
    pointer-events: all;
	font-size: 3rem;
	margin-left: 30px;
    /* box-shadow: 0 2px 2px 0 rgba(137, 137, 137, 0.75); */
}

#lp_contents section.section_cv .inner .contents .tel_link a:hover {
    color:rgba(102,255,204,1);
}

  #lp_contents section.section_cv .inner .contents .tel_link a b {
    background-size: 32px auto;
    padding-left: 40px;
    font-size: 3rem;
  }
  #lp_contents section.section_cv .inner .contents .tel_link a small {
    margin-top: 5px;
    font-size: 0.9rem;
  }
  #lp_contents section.section_cv .inner .contents .form_link {
    /*margin-top: 20px;
    font-size: 1rem;*/
  }
  #lp_contents section.section_cv .inner .contents .form_link a {
    background-size: 15px auto;
    padding-left: 20px;
  }
  #lp_contents section.section_cv .inner .photo {
    width: 80px;
    top: auto;
    bottom: -15px;
    left: -5px;
  }
  #lp_contents section.section_merit {
    padding: 40px 0;
  }
  #lp_contents section.section_merit .inner h2 {
    margin: 0 auto;
    width: 71.83099%;
  }
  #lp_contents section.section_merit .inner h2 + p {
    margin-top: 30px;
    font-size: 1.4rem;
    line-height: 1.4;
  }
  #lp_contents section.section_merit .inner ul {
    margin: 0 2.5px;
  }
  #lp_contents section.section_merit .inner ul li {
    /*border-top-right-radius: 10px;
    border-bottom-left-radius: 10px;*/
    margin: 15px 7.5px 0;
    padding: 15px 0;
    flex: calc(50% - 15px) 0 0;
  }
  /*******************************追加CSS**************************************/
  #lp_contents section.sect_p02 .inner ul li {
   /* border-top-right-radius: 10px;
    border-bottom-left-radius: 10px;*/
    margin: 15px auto;
    padding: 15px;
    flex: calc(100% - 15px) 0 0;
  }
 /************************************************************************/ 
  #lp_contents section.section_merit .inner ul li .image {
    margin: 0 auto;
    width: 48.07692%;
  }
  #lp_contents section.section_merit .inner ul li p {
    margin-top: 15px;
    font-size: 1.2rem;
  }
  #lp_contents section.section_merit .inner ul li p b {
    font-size: 1.8rem;
  }
  #lp_contents section.section_merit .inner ul li p b.small {
    font-size: 1.6rem;
  }
  #lp_contents section.section_merit .inner ul li p span {
    font-size: 1rem;
  }
  #lp_contents section#section01 h2 {
    padding: 0;
  }
  #lp_contents section#section01 h2 .section01_inner {
    display: none;
  }
  #lp_contents section#section01 .contents {
    display: none;
  }
  #lp_contents section#section03 {
    background: url("../img/section03_bg.jpg") center no-repeat;
    padding: 30px 0;
  }
  #lp_contents section#section03 .inner h2 + p {
    margin-top: 10px;
    font-size: 1.2rem;
  }
  #lp_contents section#section03 .inner h2 + p + p {
    margin-top: 30px;
    font-size: 1.6rem;
  }
  #lp_contents section#section03 .inner h2 + p + p::before {
    border-right-width: 3px;
    border-bottom-width: 3px;
    width: 17px;
    height: 17px;
    top: -35px;
  }
  #lp_contents section#section03 .inner h2 + p + p span {
    margin-top: 5px;
    padding: 5px 10px;
    font-size: 1.9rem;
  }
  #lp_contents section#section04 {
    background-size: 10px auto;
    padding: 30px 0;
  }
  #lp_contents section#section04 .inner h2 + p {
    margin-top: 20px;
    font-size: 1.4rem;
    text-align: left;
  }
  #lp_contents section#section04 .inner ul li {
    margin-top: 20px;
    padding: 10px;
  }
  #lp_contents section#section04 .inner ul li h3 {
    margin-left: -15px;
    padding: 5px 15px;
    width: 190px;
    font-size: 1.8rem;
  }
  #lp_contents section#section04 .inner ul li h3::after {
    border-width: 0 15px 32px 0;
  }
  #lp_contents section#section04 .inner ul li table {
    margin-top: 10px;
    font-size: 1.3rem;
  }
  #lp_contents section#section04 .inner ul li table tbody tr th, #lp_contents section#section04 .inner ul li table tbody tr td {
    padding: 5px;
  }
  #lp_contents section#section04 .inner ul li table tbody tr th {
    width: 120px;
  }
  #lp_contents section#section04 .inner ul li table tbody tr td .notes {
    margin-top: 5px;
    font-size: 1rem;
  }
  #lp_contents section#section04 .inner ul li:nth-child(4) table tbody tr th {
    width: 120px;
  }
  #lp_contents section#section05 {
    padding: 30px 0;
  }
  #lp_contents section#section05 .inner h2 {
    width: auto;
  }
  #lp_contents section#section05 .inner h2 small {
    margin-top: 10px;
    font-size: 1rem;
  }
  #lp_contents section#section05 .inner h2 + p {
    margin: 20px -5px 0;
    width: auto;
  }
  #lp_contents section#section05 .inner ol li {
    margin-top: 30px;
  }
  #lp_contents section#section06 {
    padding: 30px 0;
  }
  #lp_contents section#section06 .inner p {
    margin-top: 10px;
  }
  #lp_contents section#section07 {
    padding: 30px 0;
  }
  #lp_contents section#section07 .inner ol {
    margin-top: 30px;
  }
  #lp_contents section#section08 {
    background-size: 10px auto;
    padding: 30px 0;
  }
  #lp_contents section#section08 .inner h2 {
    margin: 0 auto;
    width: 71.83099%;
  }
  #lp_contents section#section08 .inner ol {
    margin-top: 20px;
  }
  #lp_contents section#section08 .inner ol li {
    margin-top: 15px;
  }
  #lp_contents section#section09 {
    padding: 30px 0;
  }
  #lp_contents section#section09 .inner p {
    margin-top: 15px;
  }
  #lp_contents section#section10 {
    background-size: 10px auto;
    padding-bottom: 40px;
  }
  #lp_contents section#section10 .inner p {
    margin-top: 30px;
  }
  #lp_contents section#section11 {
    padding: 30px 0;
  }
  #lp_contents section#section11 .inner h2 {
    margin: 0 auto;
    width: 54.92958%;
  }
  #lp_contents section#section11 .inner ol {
    margin-top: 20px;
  }
  #lp_contents section#section11 .inner ol li {
    margin-top: 15px;
  }
  #lp_contents section#section12 {
    background-size: 10px auto;
    padding: 40px 0;
  }
  #lp_contents section#section12 .inner h2 {
    margin: 0 auto;
    width: 84.22535%;
  }
  #lp_contents section#section12 .inner h3 {
    margin-top: 50px;
  }
  #lp_contents section#section12 .inner ul {
    margin-top: 20px;
  }
  #lp_contents section#section12 .inner ul li {
    margin-top: 20px;
  }
  #lp_contents section#section12 .inner .photo {
    margin: 25px auto 0;
    width: 84.50704%;
  }
  #lp_contents section#section12 .inner .photo img {
    box-shadow: 10px 10px 0 0 #d6d6d6;
  }
  #lp_contents section#section13 {
    padding: 40px 0;
  }
  #lp_contents section#section13 .inner h2 {
    margin: 0 auto;
    width: 80.28169%;
  }
  #lp_contents section#section13 .inner h2 + p {
    margin-top: 15px;
  }
  #lp_contents section#section13 .inner ol {
    margin-top: 20px;
  }
  #lp_contents section#section13 .inner ol li {
    margin: 10px 0 0 -5px;
  }
  #lp_contents section#section14 {
    background-size: 10px auto;
    padding: 30px 0;
  }
  #lp_contents section#section14 .inner h2 {
    margin: 0 auto;
    width: 63.38028%;
  }
  #lp_contents section#section14 .inner p {
    margin: 30px auto 0;
    width: 91.26761%;
  }
  #lp_contents section#section15 {
    background: url("../img/section04_bg.svg");
    background-color: #213660;
    background-size: 10px auto;
  }
  #lp_contents section#section15 .inner h2 {
    margin-top: 0;
    width: 69.29577%;
    position: relative;
    z-index: 1;
  }
  #lp_contents section#section15 .inner p {
    margin-top: -14.08451%;
  }
  #lp_contents section#section15 .inner p img {
    margin-right: auto;
  }
  #lp_contents section#section16 {
    background-size: 10px auto;
    padding: 30px 0;
  }
  #lp_contents section#section16 .inner h2 {
    margin: 0 auto;
    width: 83.09859%;
  }
  #lp_contents section#section16 .inner ol {
    margin-top: 0;
    display: block;
  }
  #lp_contents section#section16 .inner ol li {
    margin: 20px auto 0;
    width: 92.67606%;
  }
  #lp_contents section#section17 {
    padding: 30px 0;
  }
  #lp_contents section#section17 .inner h2 {
    margin: 0 auto;
    width: 77.60563%;
  }
  #lp_contents section#section17 .inner ol {
    margin: 0 2.5px;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  #lp_contents section#section17 .inner ol li {
    margin-top: 15px;
    padding: 0 7.5px;
    width: 50%;
    box-sizing: border-box;
  }
  #lp_contents section#section18 {
    background-position: 70% center;
    padding: 30px 0;
  }
  #lp_contents section#section18 .inner h2 {
    margin: 0 auto;
    width: 56.33803%;
  }
  #lp_contents section#section18 .inner h2 + dl {
    margin-top: 25px;
  }
  #lp_contents section#section18 .inner dl {
    margin-top: 15px;
    padding: 10px;
  }
  #lp_contents section#section18 .inner dl dt, #lp_contents section#section18 .inner dl dd {
    padding-top: 4px;
    padding-left: 35px;
  }
  #lp_contents section#section18 .inner dl dt::before, #lp_contents section#section18 .inner dl dd::before {
    width: 25px;
    height: 25px;
    font-size: 1.6rem;
    line-height: 25px;
  }
  #lp_contents section#section18 .inner dl dt {
    /*border-bottom-width: 1px;*/
    font-size: 1.6rem;
  }
  #lp_contents section#section18 .inner dl dd {
    margin-top: 10px;
    padding-top: 0;
    font-size: 1.3rem;
  }
  #lp_contents section#section19 {
    background-size: 10px auto;
    padding: 30px 0;
  }
  #lp_contents section#section19 .inner h2 {
    margin: 0 auto;
    width: 80.28169%;
  }
  #lp_contents section#section19 .inner .contens {
    margin-top: 20px;
    padding: 15px 10px;
  }
  #lp_contents section#section19 .inner .contens h3 {
    border-bottom-width: 1px;
    font-size: 1.8rem;
  }
  #lp_contents section#section19 .inner .contens h3 b b {
    font-size: 2.5rem;
  }
  #lp_contents section#section19 .inner .contens p {
    font-size: 1.3rem;
  }
  #lp_contents section#section20 {
    padding: 30px 0;
  }
  #lp_contents section#section20 .inner h2 {
    margin: 0 auto;
    width: 76.33803%;
  }
  #lp_contents section#section_form {
    padding-top: 30px;
  }
  #lp_contents section#section_form .inner h2 {
    font-size: 2.8rem;
  }
  #lp_contents section#section_form .inner h3 {
    margin-top: 50px;
    font-size: 1.5rem;
  }
  #lp_contents section#section_form .inner #form {
    margin-top: 30px;
  }
  #lp_contents section#section_form .inner #form dl {
    padding: 10px;
    font-size: 1.4rem;
    display: block;
  }
  #lp_contents section#section_form .inner #form dl dt {
    padding-right: 0;
  }
  #lp_contents section#section_form .inner #form dl dt span {
    margin: 0 0 0 5px;
    padding: 3px 0 1px;
    width: 30px;
    font-size: 1.1rem;
    vertical-align: middle;
    display: inline-block;
    float: none;
  }
  #lp_contents section#section_form .inner #form dl dd {
    margin-top: 10px;
    padding-left: 0;
  }
  #lp_contents section#section_form .inner #form #btn_submit {
    margin-top: 30px;
  }
  #lp_contents section#section_form .inner #form #btn_submit button {
    border-radius: 5px;
    padding: 15px 0;
    width: 83.09859%;
    font-size: 2.2rem;
    box-sizing: border-box;
  }
  #lp_contents section#section_form .inner #form #btn_submit button::before {
    width: 15px;
    height: 15px;
    right: 10px;
  }
  #lp_contents section#section_form .inner #form #btn_submit button::after {
    border-width: 5px 0 5px 8px;
    right: 12px;
  }
  #lp_contents section#section_form .inner #privacy_policy {
    margin-top: 10px;
    padding: 10px;
    height: 220px;
    font-size: 1.1rem;
    line-height: 1.54;
  }
  #lp_contents section#section_form .inner #privacy_policy h4 {
    margin-top: 1.54em;
  }
  #lp_contents section#section_form .inner #privacy_policy p, #lp_contents section#section_form .inner #privacy_policy address {
    margin-top: 1.54em;
  }
  #default_contents {
    margin-top: 40px;
  }
  #default_contents .inner h2 {
    font-size: 2.4rem;
  }
  #default_contents .inner h3 {
    border-left-width: 5px;
    margin-top: 30px;
    font-size: 2rem;
  }
  #default_contents .inner p {
    margin-top: 1.7em;
  }
  
p.lead2 {
    font-size: 2rem;
    margin: 5% 3% 3% 2%;
    font-weight: bold;
    color: #ff0033;
}

}

/* ---------------------------------------------
lower page format
--------------------------------------------- */
/* ---------------------------------------------
footer format
--------------------------------------------- */
#site_footer {
	/*background: url(../img/bg01.png) repeat;
  background: url("../img/section04_bg.svg");*/
  background-color: #0b326d;
  /*margin-top: 80px;*/
  padding: 60px 0 20px;
  min-width: 1000px;
 /* margin-bottom: 50px;*/
}

#site_footer > .inner {
  margin-bottom: 60px;
}

#site_footer > .inner h2 {
  font-size: 4rem;
  line-height: 1.2;
  text-align: center;
  color: #fff;
}

#site_footer > .inner table {
  margin: 30px auto 0;
  font-size: 1.4rem;
  line-height: 1.428;
  color: #fff;
}

#site_footer > .inner table tbody tr th, #site_footer > .inner table tbody tr td {
  padding-top: 10px;
  white-space: nowrap;
}

#site_footer > .inner table tbody tr th {
  padding-right: 40px;
  font-weight: normal;
  text-align: right;
}

#site_footer #footer_links {
  background-color: #4a99e3;
  /*margin-top: 60px;*/
  padding: 20px 0;
}

/*div#footer_links {
    position: fixed;
    bottom: 0;
    width: 100%;
}*/

#site_footer #footer_links .inner ul {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  color: #1c3466;
}

#site_footer #footer_links .inner ul li {
  display: inline-block;
}

#site_footer #footer_links .inner ul li::after {
  content: '｜';
  color:#ffffff;
}

#site_footer #footer_links .inner ul li a {
    padding: 0 30px;
    text-decoration: none;
    color: #ffffff;
    display: inline-block;
    font-size: 1.7rem;
    font-weight: 400;
}

#footer_links .inner ul li a:hover {
    background-color: yellow;
    color: #4a99e3 !important;
}

#site_footer #footer_links .inner ul li:first-child::before {
  content: '｜';
    color:#ffffff;
}

#site_footer small {
  margin-top: 20px;
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  display: block;
}

@media (max-width: 640px) {
  #site_footer {
    background-size: 10px auto;
    /*margin-top: 50px;*/
    padding: 30px 0 15px;
    min-width: inherit;
	/*padding-bottom:10%;*/
}
  #site_footer > .inner {
    margin-bottom: 50px;
  }
  #site_footer > .inner h2 {
    font-size: 2rem;
  }
  #site_footer > .inner table {
    margin: 10px auto 0;
    font-size: 1.2rem;
  }
  #site_footer > .inner table tbody tr th {
    padding-right: 20px;
  }
  #site_footer > .inner table tbody tr td {
    white-space: normal;
  }
  #site_footer #footer_links {
    margin-top: 50px;
    padding: 0;
  }
  #site_footer #footer_links .inner ul {
    margin: 0 -10px;
    font-size: 1.1rem;
    display: flex;
    flex-wrap: wrap;
  }
  #site_footer #footer_links .inner ul li {
    border-left: #ffffff solid 1px;
    display: block;
    flex: 33.33% 0 0;
    box-sizing: border-box;
  }
  #site_footer #footer_links .inner ul li::after {
    content: '';
  }
  #site_footer #footer_links .inner ul li a {
    padding: 10px;
    display: block;
  }
  #site_footer #footer_links .inner ul li:first-child::before {
    content: '';
  }
  #site_footer #footer_links .inner ul li:nth-child(3n+1) {
    border-left: none;
  }
  #site_footer #footer_links .inner ul li:nth-child(n+4) {
    border-top: #ffffff solid 1px;
  }
  #site_footer small {
    margin-top: 15px;
  }

#lp_contents section.section_cv .inner .photo2 {
    width: 100px;
    top: auto !important;
    bottom: -17px !important;
    left: 7px !important;
}
  
}

/*----------------------------追加CSS------------------------------------*/

#sect_p01 .p01_inner {
    background-color:#0b326d;
	/*height:590px;*/
    padding-top: 1px;
}

.p01_inner h2 {
	margin:15px 10px;
}

.kaiketsu_inner, .sect_p02 {
	background: url("../img/section_dot-grid_bg.png") repeat;
	margin:0 auto;
}

.sect_p02 .inner ul li {
    background-color: #fff;
    border: #ff0033 solid 2px;
    margin: 30px auto;
    /*padding: 15px 10px;*/
    box-sizing: border-box;
    flex: calc(50% - 20px) 0 0;
}

.sect_p02 .inner ul {
    margin: 0 -10px;
    display: flex;
    flex-wrap: wrap;
}

.bk_red {
	color:#ffffff;
	background-color:#ff0033;
	padding: 15px 10px;
}

.b_red {
	background-color:#ffffff;
	padding: 15px 10px;
}

#lp_contents section#section04 .inner ul li table tbody tr td span {
	color:#ff0033;
}

#section05 .inner {
    padding-top: 5%;
}

#lp_contents section#section21 {
    background: url(../img/section_dot-grid_bg.png) repeat;
    padding: 5% 0;
}

#lp_contents section#section_21.inner ul {
    margin: 0 -10px;
    display: flex;
    flex-wrap: wrap;
}

#lp_contents section#section_21.inner ul li {
    background-color: #fff;
    /* border: #c91111 solid 2px; */
    border: #4a99e3 solid 2px;
    margin: 30px 10px 0;
    padding: 15px 10px;
    box-sizing: border-box;
    flex: calc(25% - 20px) 0 0;
}

#lp_contents section.section22 {
    background-color: rgba(0,0,0,1);
    background: url(../img/half-black.jpg) repeat;
    padding: 5% 0;
}

#lp_contents section.section23 {
    background: url(../img/section_dot-grid_bg.png) repeat;
    padding: 5% 0;
}

.img2 {
    margin: 0 auto;
    max-width: 100%;
    height: auto;
    display: block;
}

p.modoru_link {
    text-align: right;
    margin-top: 5%;
}

#lp_contents section.section_cv .inner .photo2 {
    position: absolute;
    top: 30px;
    left: 40px;
}

/**********************************************************/
/* btnAnime04 */

@-moz-keyframes plnpln1 {
    0% { -moz-transform: skewX(9deg); }
    10% { -moz-transform: skewX(-8deg); }
    20% { -moz-transform: skewX(7deg); }
    30% { -moz-transform: skewX(-6deg); }
    40% { -moz-transform: skewX(5deg); }
    50% { -moz-transform: skewX(-4deg); }
    60% { -moz-transform: skewX(3deg); }
    70% { -moz-transform: skewX(-2deg); }
    80% { -moz-transform: skewX(1deg); }
    90% { -moz-transform: skewX(0deg); }
    100% { -moz-transform: skewX(0deg); }
}

@-o-keyframes plnpln1 {
    0% { -o-transform: skewX(9deg); }
    10% { -o-transform: skewX(-8deg); }
    20% { -o-transform: skewX(7deg); }
    30% { -o-transform: skewX(-6deg); }
    40% { -o-transform: skewX(5deg); }
    50% { -o-transform: skewX(-4deg); }
    60% { -o-transform: skewX(3deg); }
    70% { -o-transform: skewX(-2deg); }
    80% { -o-transform: skewX(1deg); }
    90% { -o-transform: skewX(0deg); }
    100% { -o-transform: skewX(0deg); }
}

@-webkit-keyframes plnpln1 {
    0% { -webkit-transform: skewX(9deg); }
    10% { -webkit-transform: skewX(-8deg); }
    20% { -webkit-transform: skewX(7deg); }
    30% { -webkit-transform: skewX(-6deg); }
    40% { -webkit-transform: skewX(5deg); }
    50% { -webkit-transform: skewX(-4deg); }
    60% { -webkit-transform: skewX(3deg); }
    70% { -webkit-transform: skewX(-2deg); }
    80% { -webkit-transform: skewX(1deg); }
    90% { -webkit-transform: skewX(0deg); }
    100% { -webkit-transform: skewX(0deg); }
}

@-moz-keyframes arrow1 {
    0% { -moz-transform: translateX(0px); }
    45% { -moz-transform: translateX(20px); }
    50% { -moz-transform: translateX(25px); }
    55% { -moz-transform: translateX(20px); }
    95% { -moz-transform: translateX(0px); }
    100% { -moz-transform: translateX(0px); }
}

@-o-keyframes arrow1 {
    0% { -o-transform: translateX(0px); }
    45% { -o-transform: translateX(20px); }
    50% { -o-transform: translateX(25px); }
    55% { -o-transform: translateX(20px); }
    95% { -o-transform: translateX(0px); }
    100% { -o-transform: translateX(0px); }
}

@-webkit-keyframes arrow1 {
    0% { -webkit-transform: translateX(0px); }
    45% { -webkit-transform: translateX(20px); }
    50% { -webkit-transform: translateX(25px); }
    55% { -webkit-transform: translateX(20px); }
    95% { -webkit-transform: translateX(0px); }
    100% { -webkit-transform: translateX(0px); }
}
.btnAnime04 {
    position: relative;
    display:block;
    width:100%;
    max-width:600px;
    padding:10px;
    padding-left:10%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-left:auto;
    margin-right:auto;
}
.btnAnime04-animate{
    -webkit-animation-duration:2s;
    -moz-animation-duration:2s;
    -ms-animation-duration:2s;
    -o-animation-duration:2s;
    animation-duration:2s;

    -webkit-animation-timing-function: ease-in;
    -moz-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;

    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    -o-animation-iteration-count: infinite;
    -ms-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    
    margin-left:auto;
    margin-right:auto;
    z-index: 8;
    
    -webkit-animation-name: plnpln1;
    -moz-animation-name: plnpln1;
    -o-animation-name: plnpln1;
    animation-name: plnpln1;
    width:100%;
}
.btnAnime04-arrow {
    position: absolute;
    top:25%;
    left:-5px;
    -webkit-animation-duration:1s;
    -moz-animation-duration:1s;
    -ms-animation-duration:1s;
    -o-animation-duration:1s;
    animation-duration:1s;

    -webkit-animation-timing-function: ease-in;
    -moz-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;

    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;

    -o-animation-iteration-count: infinite;
    -ms-animation-iteration-count: infinite;
    animation-iteration-count: infinite;

    -webkit-animation-name: arrow1;
    -moz-animation-name: arrow1;
    -o-animation-name: arrow1;
    animation-name: arrow1;
    z-index: 9;
    width:20%;
    max-width:100px;
}
.btnAnime04:hover img{
    opacity:1;
}

.boxx {
    width: 150px;
    position: relative;
    right: -50px;
}

img.btnAnime04-animate {
    width: 75%;
    padding-left: 5%;
}
img.btnAnime04-arrow {
    width: 12%;
}